package collector.task;

import net.apexcns.core.BaseVO;

/**
 * <pre>
 *  Quartz의 작업의 스케줄링을 위한 Trigger 에 대한 객체
 *  트리거명, 트리거그룹, 스케줄 시작시각, 주기 분류, 주기로 구성됨.
 * <br>
 * collector.task.JobTriggerVO Class / JobTriggerVO.java
 * </pre>
 * @author ytjeong / apexcns,Inc.
 * @version 1.0
 * @see javadoc
 * @since 2012. 9. 12.
 */
@SuppressWarnings("serial")
public class JobTriggerVO extends BaseVO {
    
    protected String triggerName	= null;
    protected String triggerGroup	= null;
    protected String ScheduleStartTime	= null;
    protected String durationType	= null;
    protected int durationValue	= -1; // ScheduleStartTime[=HHmmss]

    /**
     * <pre>
     *
     * @param triggerName
     * @param triggerGroup
     * @param scheduleStartTime
     * @param durationType
     * @param durationValue
     * <br>
     * </pre>
     */
    public JobTriggerVO(String triggerName, String triggerGroup,
	    String scheduleStartTime, String durationType, int durationValue) {
	super();
	this.triggerName = triggerName;
	this.triggerGroup = triggerGroup;
	ScheduleStartTime = scheduleStartTime;
	this.durationType = durationType;
	this.durationValue = durationValue;
    }

    /** <pre>
     * Method : JobTriggerVO.getTriggerName
     * 	to get triggerName
     * <br> 
     * @return the triggerName : type of String
     * </pre>
     */
    public String getTriggerName() {
        return triggerName;
    }

    /** <pre>
     * Method : JobTriggerVO.setTriggerName
     * 	to set triggerName 
     * <br> 
     * @param triggerName : type of String
     * </pre>
     */
    public void setTriggerName(String triggerName) {
        this.triggerName = triggerName;
    }

    /** <pre>
     * Method : JobTriggerVO.getTriggerGroup
     * 	to get triggerGroup
     * <br> 
     * @return the triggerGroup : type of String
     * </pre>
     */
    public String getTriggerGroup() {
        return triggerGroup;
    }

    /** <pre>
     * Method : JobTriggerVO.setTriggerGroup
     * 	to set triggerGroup 
     * <br> 
     * @param triggerGroup : type of String
     * </pre>
     */
    public void setTriggerGroup(String triggerGroup) {
        this.triggerGroup = triggerGroup;
    }

    /** <pre>
     * Method : JobTriggerVO.getScheduleStartTime
     * 	to get scheduleStartTime
     * <br> 
     * @return the scheduleStartTime : type of String
     * </pre>
     */
    public String getScheduleStartTime() {
        return ScheduleStartTime;
    }

    /** <pre>
     * Method : JobTriggerVO.setScheduleStartTime
     * 	to set scheduleStartTime 
     * <br> 
     * @param scheduleStartTime : type of String
     * </pre>
     */
    public void setScheduleStartTime(String scheduleStartTime) {
        ScheduleStartTime = scheduleStartTime;
    }

    /** <pre>
     * Method : JobTriggerVO.getDurationType
     * 	to get durationType
     * <br> 
     * @return the durationType : type of String
     * </pre>
     */
    public String getDurationType() {
        return durationType;
    }

    /** <pre>
     * Method : JobTriggerVO.setDurationType
     * 	to set durationType 
     * <br> 
     * @param durationType : type of String
     * </pre>
     */
    public void setDurationType(String durationType) {
        this.durationType = durationType;
    }

    /** <pre>
     * Method : JobTriggerVO.getDurationValue
     * 	to get durationValue
     * <br> 
     * @return the durationValue : type of int
     * </pre>
     */
    public int getDurationValue() {
        return durationValue;
    }

    /** <pre>
     * Method : JobTriggerVO.setDurationValue
     * 	to set durationValue 
     * <br> 
     * @param durationValue : type of int
     * </pre>
     */
    public void setDurationValue(int durationValue) {
        this.durationValue = durationValue;
    }

    /* (non-Javadoc)
     * @see java.lang.Object#toString() 
     * 
     * Method : collector.task.JobTriggerVO.toString
     */
    @Override
    public String toString() {
		StringBuilder builder = new StringBuilder();
		builder.append("JobTriggerVO [triggerName=");
		builder.append(triggerName);
		builder.append(", triggerGroup=");
		builder.append(triggerGroup);
		builder.append(", ScheduleStartTime=");
		builder.append(ScheduleStartTime);
		builder.append(", durationType=");
		builder.append(durationType);
		builder.append(", durationValue=");
		builder.append(durationValue);
		builder.append("]");
		
		return builder.toString();
    }
}
